package com.jugheadzhou.kafka.consumer.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 患者基本信息
 * 
 * @author jugheadzhou
 * @date 2021-08-28 13:39:39
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PatientBase implements Serializable {
	private static final long serialVersionUID = 1L;

	/** 患者ID */
	@JsonProperty("a")
	private Long patientId;

	/** 身份证 */
	@JsonProperty("b")
	private String idCard;

	/** 健康卡号 */
	@JsonProperty("c")
	private String healthCardNo;

	/** 姓名 */
	@JsonProperty("d")
	private String patientName;

	/** 性别 */
	@JsonProperty("e")
	private String gender;

	/** 出生日期 */
	@JsonProperty("f")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
	private LocalDate birthday;

	/** 年龄 */
	@JsonProperty("g")
	private Integer age;

	/** 总费用 */
	@JsonProperty("h")
	private BigDecimal totalCost;

	/** 创建人员姓名 */
	@JsonProperty("i")
	private String creatorName;

	/** 创建时间 */
	@JsonProperty("j")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
	private LocalDateTime createTime;

	/** 最新操作人员姓名 */
	@JsonProperty("k")
	private String lastModifyUserName;

	/** 最新操作时间 */
	@JsonProperty("l")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
	private LocalDateTime lastModifyTime;

	/** 是否删除（0-未删除，1-已删除） */
	@JsonProperty("m")
	private Integer deleted;

}

